/**
 * 
 */
package co.fitstart.api.service;

import java.util.Date;

import com.demo2do.core.service.GenericService;
import com.demo2do.core.support.Result;

import co.fitstart.entity.order.Order;
import co.fitstart.entity.order.PaymentMethod;
import co.fitstart.entity.order.PaymentRequest;

/**
 * @author downpour
 *
 */
public interface OrderService extends GenericService<Order> {
    
    /**
     * 
     * @param orderNo
     * @return
     */
    public Order getOrder(String orderNo);
    
    /**
     * 
     * @param paymentRequest
     * @return
     */
    public Result callback(PaymentRequest paymentRequest);
    
    /**
     * 
     * @param order
     * @param requestNo
     * @param amount
     * @param payTime
     * @param paymentMethod
     */
    public void callback(Order order, String requestNo, int amount, Date payTime, PaymentMethod paymentMethod);
    
    /**
     * 
     */
    public void initCreditData();
}
